package com.ny.mapper;

import com.ny.domain.MemberDO;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * MemberMapper
 *
 * @author MSI-NB
 * @date 2025-03-08 13:14:38
 */
@Mapper
public interface MemberMapper {

    /**
     * 根据会员ID查询会员信息
     *
     * @Param memberId 会员ID
     * @Return MemberDO
     */
    MemberDO selectById(@Param("memberId") Integer memberId);

    /**
     * 根据会员姓名和联系方式查询会员信息
     *
     * @Param name 会员姓名
     * @Param contactInfo 会员联系方式
     * @Return MemberDO
     */
    MemberDO selectByNameAndContactInfo(@Param("name") String name, @Param("contactInfo") String contactInfo);

    /**
     * 插入会员信息
     *
     * @Param memberDO 会员信息
     * @Return 插入结果
     */
    int insert(MemberDO memberDO);

    /**
     * 根据会员ID删除会员信息
     *
     * @Param memberId 会员ID
     * @Return 删除结果
     */
    int deleteById(@Param("memberId") Integer memberId);

    /**
     * 更新会员信息
     *
     * @Param memberDO 会员信息
     * @Return 更新结果
     */
    int updateById(MemberDO memberDO);

    List<MemberDO> queryMemberList(int pageNum, int pageSize);
}
